package com.ruoyi.tsjData.service.impl;

import java.util.List;

import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.ProcessPictureUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.tsjData.domain.result.DataTshjZhdlResult;
import com.ruoyi.tsjData.mapper.DataTshjZhdlResultMapper;
import com.ruoyi.tsjData.service.IDataTshjZhdlResultService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;


/**
 * 提升机-制动力测试结果Service业务层处理
 * 
 * @author ruoyi
 * @date 2023-11-07
 */
@Service
public class DataTshjZhdlResultServiceImpl implements IDataTshjZhdlResultService
{
    @Autowired(required = false)
    private DataTshjZhdlResultMapper dataTshjZhdlResultMapper;

    /**
     * 查询提升机-制动力测试结果
     * 
     * @param zhdlResultId 提升机-制动力测试结果主键
     * @return 提升机-制动力测试结果
     */
    @Override
    public DataTshjZhdlResult selectDataTshjZhdlResultByZhdlResultId(Long zhdlResultId)
    {
        return dataTshjZhdlResultMapper.selectDataTshjZhdlResultByZhdlResultId(zhdlResultId);
    }

    /**
     * 查询提升机-制动力测试结果列表
     * 
     * @param dataTshjZhdlResult 提升机-制动力测试结果
     * @return 提升机-制动力测试结果
     */
    @Override
    public List<DataTshjZhdlResult> selectDataTshjZhdlResultList(DataTshjZhdlResult dataTshjZhdlResult)
    {
        return dataTshjZhdlResultMapper.selectDataTshjZhdlResultList(dataTshjZhdlResult);
    }

    /**
     * 任务id查询制动力测试结果
     * @param dataTaskId
     * @return
     */
    @Override
    public List<DataTshjZhdlResult> selectDataTshjZhdlResultByDataTaskId(Long dataTaskId, Long dataResultId) {
        return dataTshjZhdlResultMapper.selectDataTshjZhdlResultByDataTaskId(dataTaskId, dataResultId);
    }

    /**
     * 新增提升机-制动力测试结果
     * 
     * @param dataTshjZhdlResult 提升机-制动力测试结果
     * @return 结果
     */
    @Override
    public int insertDataTshjZhdlResult(DataTshjZhdlResult dataTshjZhdlResult)
    {
        dataTshjZhdlResult.setCreateTime(DateUtils.getNowDate());
        String rootPath = RuoYiConfig.getProfile() + RuoYiConfig.getChartPath() + "/";
        //制动力路径图
        String zhdlImg = System.currentTimeMillis() + "-制动力图.png";
        //svg转png
        if(StringUtils.isNotEmpty(dataTshjZhdlResult.getZhdlSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjZhdlResult.getZhdlSvg(), rootPath + dataTshjZhdlResult.getDataTaskId() + "/" + zhdlImg);
            dataTshjZhdlResult.setZhdlImg("/profile/chartPath/" + dataTshjZhdlResult.getDataTaskId() + "/" + zhdlImg);
        }
        return dataTshjZhdlResultMapper.insertDataTshjZhdlResult(dataTshjZhdlResult);
    }

    /**
     * 修改提升机-制动力测试结果
     * 
     * @param dataTshjZhdlResult 提升机-制动力测试结果
     * @return 结果
     */
    @Override
    public int updateDataTshjZhdlResult(DataTshjZhdlResult dataTshjZhdlResult)
    {
        dataTshjZhdlResult.setUpdateTime(DateUtils.getNowDate());
        return dataTshjZhdlResultMapper.updateDataTshjZhdlResult(dataTshjZhdlResult);
    }

    /**
     * 批量删除提升机-制动力测试结果
     * 
     * @param zhdlResultIds 需要删除的提升机-制动力测试结果主键
     * @return 结果
     */
    @Override
    public int deleteDataTshjZhdlResultByZhdlResultIds(Long[] zhdlResultIds)
    {
        return dataTshjZhdlResultMapper.deleteDataTshjZhdlResultByZhdlResultIds(zhdlResultIds);
    }

    /**
     * 删除提升机-制动力测试结果信息
     * 
     * @param zhdlResultId 提升机-制动力测试结果主键
     * @return 结果
     */
    @Override
    public int deleteDataTshjZhdlResultByZhdlResultId(Long zhdlResultId)
    {
        return dataTshjZhdlResultMapper.deleteDataTshjZhdlResultByZhdlResultId(zhdlResultId);
    }
}
